TypedAs Generic Method

Wintellect PowerCollections

Collapse imageExpand ImageCollapseAll imageExpandAll imageDropDown imageDropDownHover imageCopy imageCopyHover image
[This topic is pre-release documentation and is subject to change in future releases. Blank topics are included as placeholders.]

Given a non-generic IEnumerable interface, wrap a generic IEnumerable<T> interface around it. The generic interface will enumerate the same objects as the underlying non-generic collection, but can be used in places that require a generic interface. The underlying non-generic collection must contain only items that are of type T or a type derived from it. This method is useful when interfacing older, non-generic collections to newer code that uses generic interfaces.

Namespace: Wintellect.PowerCollections
Assembly:  PowerCollections (in PowerCollections.dll)

Syntax

C#
public static IEnumerable<T> TypedAs<T>(
	IEnumerable untypedCollection
)
Visual Basic (Declaration)
Public Shared Function TypedAs(Of T) ( _
	untypedCollection As IEnumerable _
) As IEnumerable(Of T)
Visual C++
public:
generic<typename T>
static IEnumerable<T>^ TypedAs (
	IEnumerable^ untypedCollection
)

Parameters

untypedCollection
IEnumerable
An untyped collection. This collection should only contain items of type T or a type derived from it.

Return Value

A generic IEnumerable<T> wrapper around untypedCollection. If untypedCollection is null, then null is returned.

Type Parameters

T
The item type of the wrapper collection.

Remarks

Some collections implement both generic and non-generic interfaces. For efficiency, this method will first attempt to cast untypedCollection to IEnumerable<T>. If that succeeds, it is returned; otherwise, a wrapper object is created.

See Also